/*
	File:		PauseState.h
	Course:		SGP 1302
	Author:		Peter Nguyen
	Purpose:	MainMenuState handles the main menu
*/

#pragma once
#include "IGameState.h"

class CSGD_Direct3D;
class CSGD_DirectInput;
class CSGD_TextureManager;
class CSGD_XAudio2;
class CSGD_EventSystem;

class CPauseState : public IGameState
{
public:
	//SINGLETON
	static CPauseState*	GetInstance( void );

	// IGameState Interface
	virtual		void	Enter	( void );
	virtual		void	Exit	( void );

	virtual		bool	Input	( void );
	virtual		void	Update	( float fElaspedTime );
	virtual		void	Render	( void );
	void HandleEvent(CEvent* pEvent);


private:
	//Hidden constructors / destructors / assignment operator
	CPauseState(void);
	virtual ~CPauseState(void);
	CPauseState(const CPauseState& );
	CPauseState& operator= (const CPauseState& );

	//SGD Wrappers
	CSGD_Direct3D*			m_pD3D;
	CSGD_DirectInput*		m_pDI;
	CSGD_TextureManager*	m_pTM;
	CSGD_XAudio2*			m_pXA;
	CSGD_EventSystem*		m_pES;
	//Assets
	int m_nCursorPos;
	int m_nTextImageID;
	//Cursor member

	//Volume
	

	//sfx
	


	

};

